home *** CD-ROM | disk | FTP | other *** search
/ Mac Easy 2010 May / Mac Life Ubuntu.iso / casper / filesystem.squashfs / usr / src / linux-headers-2.6.28-15 / scripts / genksyms / Makefile < prev    next >
Encoding:
Makefile  |  2008-12-24  |  1.2 KB  |  54 lines

  1.  
  2. hostprogs-y    := genksyms
  3. always        := $(hostprogs-y)
  4.  
  5. genksyms-objs    := genksyms.o parse.o lex.o
  6.  
  7. # -I needed for generated C source (shipped source)
  8. HOSTCFLAGS_parse.o := -Wno-uninitialized -I$(src)
  9.  
  10. # dependencies on generated files need to be listed explicitly
  11. $(obj)/lex.o: $(obj)/parse.h $(obj)/keywords.c
  12.  
  13. # -I needed for generated C source (shipped source)
  14. HOSTCFLAGS_lex.o := -I$(src)
  15.  
  16. ifdef GENERATE_PARSER
  17.  
  18. # gperf
  19.  
  20. quiet_cmd_keywords.c = GPERF   $@
  21.       cmd_keywords.c = gperf -L ANSI-C -a -C -E -g -H is_reserved_hash    \
  22.                -k 1,3,$$ -N is_reserved_word -p -t $< > $@
  23.  
  24. $(obj)/keywords.c: $(obj)/keywords.gperf FORCE
  25.     $(call if_changed,keywords.c)
  26.     cp $@ $@_shipped
  27.  
  28. # flex
  29.  
  30. quiet_cmd_lex.c = FLEX    $@
  31.       cmd_lex.c = flex -o$@ -d $< $(obj)/parse.h
  32.  
  33. $(obj)/lex.c: $(obj)/lex.l $(obj)/parse.h $(obj)/keywords.c FORCE
  34.     $(call if_changed,lex.c)
  35.     cp $@ $@_shipped
  36.  
  37. # bison
  38.  
  39. quiet_cmd_parse.c = BISON   $@
  40.       cmd_parse.c = bison -o$@ -dtv $(filter-out FORCE,$^)
  41.  
  42. $(obj)/parse.c: $(obj)/parse.y FORCE
  43.     $(call if_changed,parse.c)
  44.     cp $@ $@_shipped
  45.     cp $(@:.c=.h) $(@:.c=.h)_shipped
  46.  
  47. $(obj)/parse.h: $(obj)/parse.c ;
  48.  
  49. clean-files    += parse.output
  50.  
  51. endif
  52.  
  53. targets += keywords.c lex.c parse.c parse.h
  54.